// pages/message/message.js
const db = wx.cloud.database();
const _ = db.command;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    openid:'',
    messageList:[],
    num:[],
  },
  
  // onSubscribe: function(e) {
  //   var that = this
  //   // 调用微信 API 申请发送订阅消息
  //   wx.requestSubscribeMessage({
  //     // 传入订阅消息的模板id，模板 id 可在小程序管理后台申请
  //     tmplIds: ['t2r26N3WvkUIKJ3eMI1cphObk5T2gb9VuPQBGHx5kec'],
  //     success(res) {
  //       // console.log('subscribeSuccess',res)
  //       // 申请订阅成功
  //       if (res.errMsg === 'requestSubscribeMessage:ok') {
  //         // 这里将订阅的课程信息调用云函数存入云开发数据
  //         wx.cloud.callFunction({
  //               name: 'sendSubscribe',
  //         }).then(()=>{
  //           db.collection('subscribe').where({
  //             _openid:that.data.openid
  //           }).get()
  //             .then(res => {
  //               // console.log('then',res)
  //               wx.showToast({
  //                 title: '订阅成功',
  //                 icon: 'success',
  //                 duration: 2000,
  //               });
  //               if(res.data.length === 0){
  //                 db.collection('subscribe').add({
  //                   data:{
  //                     templateId: 't2r26N3WvkUIKJ3eMI1cphObk5T2gb9VuPQBGHx5kec'
  //                   }
  //                 })
  //               }
  //             })
  //             .catch(res => {
  //               wx.showToast({
  //                 title: '订阅失败',
  //                 icon: 'error',
  //                 duration: 2000,
  //               });
  //             });
  //         })
          
  //       }
  //     },
  //   });
  // },

  // onSubscribe: function(e){
  //   wx.requestSubscribeMessage({
  //     // tmplIds: ['t2r26N3WvkUIKJ3eMI1cpgoYlvvR3K6qpiHjpQmvQI4'],
  //     tmplIds: ['t2r26N3WvkUIKJ3eMI1cps-1oYn1-Sh5Y0Be89rOftM'],

  //     success(res){
  //       console.log('授权成功',res)
  //     },
  //     fail(res){
  //       console.log('授权失败',res)
  //     }
  //   })
  //   this.chatroom(e);
  // },

  delete(e){
    // console.log('delete:e',e)
    var that = this
    wx.showModal({
      title: '温馨提示',
      content: '您确定要删除此信息吗？',
      success(res) {
            if (res.confirm) {
              db.collection('message').doc(e.currentTarget.dataset.id).get({
                success:(res) =>{
                  // console.log('deleteres',res)
                  // console.log('deletere',res.data._openid)
                  // console.log('dte3',that.data.openid)
                  if(res.data._openid === that.data.openid){
                    console.log('jin')
                    db.collection('message').doc(e.currentTarget.dataset.id).update({
                      data: {
                        startershow:res.data.content.length
                      },
                    }).then(
                      wx.reLaunch({
                        url:'/pages/message/message'
                      })
                    )
                  }else{
                    db.collection('message').doc(e.currentTarget.dataset.id).update({
                      data: {
                        targetshow:res.data.content.length
                      },
                    }).then(
                      wx.reLaunch({
                        url:'/pages/message/message'
                      })
                    )
                  }
                  
                }
              })
            }
      }
    })
    
  },

  // ListTouch触摸开始
  ListTouchStart(e) {
    this.setData({
      ListTouchStart: e.touches[0].pageX
    })
  },

  // ListTouch计算方向
  ListTouchMove(e) {
    this.setData({
      ListTouchDirection: e.touches[0].pageX - this.data.ListTouchStart > 0 ? 'right' : 'left'
    })
  },

  // ListTouch计算滚动
  ListTouchEnd(e) {
    if (this.data.ListTouchDirection =='left'){
      this.setData({
        modalName: e.currentTarget.dataset.target
      })
    } else {
      this.setData({
        modalName: null
      })
    }
    this.setData({
      ListTouchDirection: null
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getData()
  },

  getData(){
    let that = this
    wx.getStorage({
      key:'openid',
      success(res){
       // console.log('dddddddd')
        that.setData({
          openid:res.data,
        })
        const openID = res.data
       wx.cloud.callFunction({
         name:"getMessageList",
         data:{
           openID
         }
       }).then(res=>{
        console.log('res',res.result.data)
        var list = res.result.data
        var showList = []
        var numList = []
        for(let item of list){
          // console.log('showlist item',item)
          if(item._openid === that.data.openid){
            var len = item.content.length
            var num = 0
            var i = len - 1
            if(item.content.length > item.startershow){
              showList.push(item)
              // console.log('item',item.content[i].openid)
              // console.log('data',that.data.openid)
              for(;i > 0; i--){
                if(item.content[i].openid !== that.data.openid){
                  num++;
                }else{
                  break;
                }
              }
              numList.push(num)
            }
          }else{
            if(item.content.length > item.targetshow){
              showList.push(item)
              var len = item.content.length
              var num = 0
              var i = len - 1
              // console.log('item2',item.content[i].openid)
              // console.log('data2',that.data.openid)
              for(;i > 0; i--){
                if(item.content[i].openid !== that.data.openid){
                  num++;
                }else{
                  break;
                }
              }
              numList.push(num)
            }
          }
        }
        console.log('showList',showList)
        that.setData({
          messageList:showList,
          num:numList
        })
      })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.getData()
  },

    //跳转聊天室
    chatroom(e) {
      // console.log('e',e)
      // db.collection('message').doc(e.currentTarget.dataset.id).update({
      //   data:{
      //     done:true
      //   }
      // })
      wx.navigateTo({
        url: '../chatroom/chatroom?_id=' + e.currentTarget.dataset.id,
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    wx.showNavigationBarLoading(); 
    wx.showLoading({
      title: '刷新中...',
    })
    this.getData();
    setTimeout(function () {
      //隐藏loading 提示框
      wx.hideLoading();
      //隐藏导航条加载动画
      wx.hideNavigationBarLoading();
      //停止下拉刷新
      wx.stopPullDownRefresh();
    }, 1000)
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})